// import * as Utils from './utils'
/**
 * 流量监控组件调用工具
 * _paq为全局注册的UV数据收集工具，也可以参照collKnowLink的写法收集PV
 */
class MatomoUtil {
  // 指定当前收集到的信息属于哪一个用户（社区上的用户ID）
  static addUserId(uid) {
    window._paq && window._paq.push(['setUserId', uid])
  }
  // 收集点击知识中心点击事件
  static collKnowlLink(params) {
    const restObj = Utils.objResolver(params)
    /**
     * globalEvent-trackEvent matomo的全局触发器
     * Category 触发事件的归属分类
     * ActionName 触发事件的名称
     * EventName 事件名称
     * EventValue {String} 事件产生的记录值
     */
    if (params) {
      window._paq && window._paq.push([
        'trackEvent',
        '事件名称',
        '点击查询',
        JSON.stringify(restObj)
      ])
    }
  }
  // 更改网站标题
  static setWebTitleAndUrl(title, url) {
    // 判断该网页是否不进行记录
    if (Utils.skipView(url)) {
      return
    }
    const paq = window._paq || []
    if (title) {
      const preTitle = window.app_curTitle
      const finalTitle = Utils.replaceTitleByUrl(title, url)
      // 防止一个页面内重复触发
      if (finalTitle && preTitle !== finalTitle) {
        paq.push([
          'setDocumentTitle',
          finalTitle
        ])
        window.app_curTitle = finalTitle
      }
    }
    paq.push(['setCustomUrl', url])
    paq.push(['trackPageView'])
  }

}

export default MatomoUtil
